﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Entity = VietStar.Library.Entity;
using Business = VietStar.Library.Business;
using System.IO;

public partial class controls_admin_addnews : System.Web.UI.UserControl
{
    Entity.TinTuc clsE_TinTuc = new VietStar.Library.Entity.TinTuc();
    Entity.ChuyenMuc clsE_ChuyenMuc = new VietStar.Library.Entity.ChuyenMuc();
    Business.ChuyenMuc clsB_ChuyenMuc = new VietStar.Library.Business.ChuyenMuc();
    DataTable dtTinTuc = new DataTable();
    Business.TinTuc clsB_TinTuc = new VietStar.Library.Business.TinTuc();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            LoadChuyenMuc(0);
            string action = Request.QueryString["action"].ToString();
            if (action == "add")
            {
                imgTinTuc.Visible = false;
                lbTittle.Text = "Viết bài mới";

            }
            if (action == "edit")
            {
                imgTinTuc.Visible = true;
                lbTittle.Text = "Sửa nội dung bài viết";
                int info = Convert.ToInt32(Request.QueryString["info"].ToString());
                clsE_TinTuc.Id = info;
                DataTable dtTinTuc = clsB_TinTuc.SelectPrimarykey(clsE_TinTuc);
                txtTieuDe.Text = dtTinTuc.Rows[0]["TieuDe"].ToString();
                txtTomTat.Text = dtTinTuc.Rows[0]["TomTat"].ToString();
                fckNoiDung.Value = dtTinTuc.Rows[0]["NoiDung"].ToString();
                bdpNgayViet.SelectedDate = Convert.ToDateTime(dtTinTuc.Rows[0]["NgayDang"].ToString());
                ddlChuyenMuc.SelectedValue = dtTinTuc.Rows[0]["ChuyenMuc"].ToString();
                txtNguonTin.Text = dtTinTuc.Rows[0]["NguonTin"].ToString();
                lbTenHinh.Text = dtTinTuc.Rows[0]["HinhAnh"].ToString();
                imgTinTuc.ImageUrl = "~/images/news/content/" + dtTinTuc.Rows[0]["HinhAnh"].ToString();
                if (Convert.ToBoolean(dtTinTuc.Rows[0]["ChoPhepBinhLuan"].ToString()) == true)
                {
                    ddlBinhLuan.SelectedValue = "1";
                }
                else
                { ddlBinhLuan.SelectedValue = "0"; }
                if (Convert.ToBoolean(dtTinTuc.Rows[0]["TinNoiBat"].ToString()) == true)
                {
                    ddlTinNoiBat.SelectedValue = "1";
                }
                else
                { ddlTinNoiBat.SelectedValue = "0"; }
                if (Convert.ToBoolean(dtTinTuc.Rows[0]["TrangThai"].ToString()) == true)
                {
                    ddlTrangThai.SelectedValue = "1";
                }
                else
                { ddlTrangThai.SelectedValue = "0"; }

            }
        }
    }
    private void LoadChuyenMuc(int IdDanhMuc)
    {
        clsE_ChuyenMuc.Id = IdDanhMuc;
        DataTable dt = clsB_ChuyenMuc.SelectTheoCap(clsE_ChuyenMuc);
        if (dt.Rows.Count > 0)
        {
            foreach (DataRow dr in dt.Rows)
            {
                int id = (int)dr["Id"];
                string name = dr["Ten"].ToString();
                int level = (int)dr["Cap"];
                string sub = "";
                for (int i = 1; i <= level; i++)
                {
                    sub += "---";
                }
                name = sub + name;
                ListItem item = new ListItem(name, id.ToString());
                ddlChuyenMuc.Items.Add(item);
                LoadChuyenMuc(id);
            }
        }
    }
    private bool check(string save)
    {
        bool kiemtra = true;
        if (save != "edit")
        {
            if (fuHinhAnh.FileName == "")
            { Alert.Show("Bạn chưa chọn hình ảnh cho bài viết"); kiemtra = false; }
        }
        else if (txtTieuDe.Text == "")
        { Alert.Show("Bạn chưa điền tiêu đề cho bài viết này !!!"); kiemtra = false; }
        else if (fckNoiDung.Value == "")
        { Alert.Show("Bạn chưa nhập nội dung cho bài viết này !!!"); kiemtra = false; }
        else if (txtTomTat.Text == "")
        { Alert.Show("Bạn chưa tóm tắt bài viết này"); kiemtra = false; }
        else if (txtNguonTin.Text == "")
        { Alert.Show("Bạn chưa khai báo nguồn tin cho bài viết này"); kiemtra = false; }
        else if (ddlChuyenMuc.SelectedValue == "0")
        { Alert.Show("Bạn chưa chọn chuyên mục cho bài viết này"); kiemtra = false; }
        else if (ddlBinhLuan.SelectedValue == "2")
        { Alert.Show("Bạn chưa chọn bài viết này có được bình luận hay không "); kiemtra = false; }
        else if (ddlTinNoiBat.SelectedValue == "2")
        { Alert.Show("Bạn chưa chọn bài viết này có nỗi bật hay không "); kiemtra = false; }
        else if (ddlTrangThai.SelectedValue == "2")
        { Alert.Show("Bạn chưa chọn bài viết này có được đăng bây giờ không "); kiemtra = false; }
        return kiemtra;
    }

    protected void btnLuu_Click(object sender, EventArgs e)
    {
        string action = Request.QueryString["action"].ToString();
        try
        {
            bool save = false;
            clsE_TinTuc.Id = Convert.ToInt32(Request.QueryString["info"].ToString());
            clsE_TinTuc.TieuDe = txtTieuDe.Text;
            clsE_TinTuc.TomTat = txtTomTat.Text;
            clsE_TinTuc.NguonTin = txtNguonTin.Text;
            clsE_TinTuc.NgayDang = bdpNgayViet.SelectedDate;
            clsE_TinTuc.NoiDung = fckNoiDung.Value;
            clsE_TinTuc.TenDangNhap = "admin";
            clsE_TinTuc.LuotXem = 0;
            clsE_TinTuc.ChuyenMuc = Convert.ToInt32(ddlChuyenMuc.SelectedValue);
            clsE_TinTuc.TinNoiBat = Convert.ToBoolean(Convert.ToInt32(ddlTinNoiBat.SelectedValue));
            clsE_TinTuc.TrangThai = Convert.ToBoolean(Convert.ToInt32(ddlTrangThai.SelectedValue));
            clsE_TinTuc.ChoPhepBinhLuan = Convert.ToBoolean(Convert.ToInt32(ddlBinhLuan.SelectedValue));
            if (check(action))
            {
                if (action == "add")
                {
                    clsE_TinTuc.HinhAnh = fuHinhAnh.FileName;
                    fuHinhAnh.SaveAs(Server.MapPath("~/images/news/content/" + fuHinhAnh.FileName));
                    save = clsB_TinTuc.Insert(clsE_TinTuc);
                    if (save)
                    { Alert.Show("Thêm bài viết mới thành công !!!"); }
                    else { Alert.Show("Thêm bài viết mới không thành công !!!"); }

                }
                if (action == "edit")
                {
                    if (fuHinhAnh.FileName != "")
                    {

                        File.Delete(Server.MapPath("~/images/news/" + lbTenHinh.Text));
                        fuHinhAnh.SaveAs(Server.MapPath("~/images/news/" + fuHinhAnh.FileName));
                        clsE_TinTuc.HinhAnh = fuHinhAnh.FileName;
                    }
                    else
                    {
                        clsE_TinTuc.HinhAnh = lbTenHinh.Text;
                    }
                    save = clsB_TinTuc.Update(clsE_TinTuc);
                    if (save)
                    { Alert.Show("Sửa bài viết thành công !!!"); }
                    else
                    { Alert.Show("Sửa bài viết không thành công !!!"); }

                }
            }
        }
        catch
        { }
    }
}
